#pragma once

#include "Drawable.h"
#include "Element.h"
#include "Ball.h"

class DrawableElement : public Element, public Drawable {

public:
	virtual void setPosition(Position *position)= 0;
	virtual Position * getPosition()= 0;
	virtual Color * getElementColor()= 0;
	virtual void setElementColor( Color * color)= 0;
	virtual Color * getLineColor()= 0;
	virtual void setLineColor( Color * color)= 0;
	virtual Texture * getTexture()= 0;
	virtual void setTexture(Texture *texture)= 0;
	virtual void draw()= 0;
	virtual float getMinXPos()= 0;
	virtual float getMinYPos()= 0;
	virtual float getMaxXPos()= 0;
	virtual float getMaxYPos()= 0;

	virtual void evaluateCollision(Ball * ball)= 0;
};
